<ui:composition template="/WEB-INF/templates/BackOffice/BasicTemplate.xhtml"
xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
xmlns:p="http://primefaces.org/ui"
xmlns:f="http://xmlns.jcp.org/jsf/core"
xmlns:h="http://xmlns.jcp.org/jsf/html">

<ui:define name="title">Gestionnaire de produits</ui:define>

 <ui:define name="content">
 <div>
 	<pre>
 	<h:link value="Gérer les catégories" outcome="/BackOffice/GestionProduits/gest_categories.xhtml"/>
 	<h:outputText value="&#160;" />
 	<h:link value="Gérer les photos" outcome="/BackOffice/GestionProduits/gest_photos.xhtml"/>
 	</pre>
 </div>

<h1>
	<h:outputLabel id="out1" value="idProduit a valider ou a supprimer (avec envoi popup après modification ou suppression puis renouvelement du bean) : #{produitBean.produitFormDTO.reference}" rendered="#{produitBean.produitFormDTO.idProduit!=null}" /> 
	<h:outputLabel id="out2" value="idProduit: is null" rendered="#{produitBean.produitFormDTO.idProduit==null}" /> 
</h1>
 
<h:form id="prdForm"> 
	<p:growl id="messages" showDetail="true" />   	 	
	 <div class="Table">
	    <div class="Title">
	        <p>#{msgs1.label_produit}</p>
	    </div>
	    <div class="Heading">
	        <div class="Cell">
	            <p>#{msgs1.label_libelle}</p>
	        </div>
	        <div class="Cell">
	            <p>#{msgs1.label_valeur}</p>
	        </div>
	    </div>
	    <div class="Row">
	        <div class="Cell">
	            <p>#{msgs1.label_nom_produit}</p>
	        </div>
	        <div class="Cell">
	            <p><h:inputText value="#{produitBean.produitFormDTO.label}" size="100"/></p>
	        </div>
	    </div>
	    <div class="Row">
	        <div class="Cell">
	            <p>#{msgs1.label_prix_produit}</p>
	        </div>
	        <div class="Cell">
	            <p><h:inputText value="#{produitBean.produitFormDTO.prix}" size="100" /></p> 
	        </div>
	    </div>
	    <div class="Row">
	        <div class="Cell">
	            <p>#{msgs1.label_reference_produit}</p>
	        </div>
	        <div class="Cell">
	            <p><h:inputText value="#{produitBean.produitFormDTO.reference}" size="100"/></p>
	        </div>
	    </div>
	    <div class="Row">
	        <div class="Cell">
	            <p>#{msgs1.label_description_produit}</p>
	        </div>
	        <div class="Cell">
	            <p><h:inputText value="#{produitBean.produitFormDTO.description}" size="100"/></p>
	        </div>
	    </div>
	    <div class="Row">
	        <div class="Cell">
	            <p>#{msgs1.label_categorie_produit}</p>
	        </div>
	        <div class="Cell">
	        <p>
	        <p:selectOneListbox id="lbCat" value="#{produitBean.categorieSelectedDTO}" size="100" style="size:5;height:40px;">
	        	<p:ajax listener="#{produitBean.onCategorieChange}" />
            	<f:selectItems value="#{produitBean.listeCategories}"  
                var="selectedCat"  itemLabel="#{selectedCat.nom}" itemValue="#{selectedCat}" />
                 <f:converter converterId="CategorieConverter" /> 
                 
	        </p:selectOneListbox>
	        </p>
	        </div>
	    </div>    
	</div>
 <hr/>
 
<h1>
	<h:outputLabel style="font-style: italic; background-color: red;" id="PourVoir" value="produitBean.produitFormDTO : is null" rendered="#{produitBean.produitFormDTO==null}" /> 
	<h:outputLabel style="font-style: italic; background-color: green;" id="PasPourVoir" value="produitBean.produitFormDTO : is not null" rendered="#{produitBean.produitFormDTO!=null}" /> 
</h1>
 <span><p:commandButton id="cmd1" disabled="#{produitBean.produitFormDTO.idProduit == null}" value="#{msgs1.label_nouveau_produit}" action ="#{produitBean.newProduit()}" update=":prdForm" /></span>
 <span><p:commandButton id="cmd2" disabled="#{produitBean.produitFormDTO.idProduit == null}" value="#{msgs1.label_supprimer_ce_produit}" action ="#{produitBean.deleteProduit()}" update=":prdForm" /></span>
 <span><p:commandButton id="cmd3" disabled="#{produitBean.produitFormDTO.idProduit != null}" value="#{msgs1.label_rechercher_un_produit}" action ="#{produitBean.getSelectedProduits()}" update=":prdForm" /></span>
 <span><p:commandButton id="cmd4"  value="#{(produitBean.produitFormDTO.idProduit != null ? msgs1.label_enregistrer_ce_produit : msgs1.label_ajouter_ce_produit)}" action ="#{produitBean.registerProduit()}" update=":prdForm" /></span> <!--  -->
 <hr/> 

<p:dataTable id="prdTable" value="#{produitBean.listeProduits}" var="o" 
	paginator="true" rows="10" rowKey="#{o.reference}" selectionMode="single"
                  selection="#{produitBean.produitSelectedDTO}">
                  
	    <p:ajax event="rowSelect"   listener="#{produitBean.onRowSelect}" update=":prdForm :prdForm:cmd1 :prdForm:cmd2 :prdForm:cmd3 :prdForm:cmd4 :out1 :out2" /> 

		<p:column>
			<f:facet name="header">
				#{msgs1.label_nom_produit}
			</f:facet>
		<h:outputText value="#{o.label}" />
		</p:column>

		<p:column>
			<f:facet name="header">
				#{msgs1.label_prix_produit}
			</f:facet>
			<h:outputText value="#{o.prix}" />
		</p:column>

		<p:column>
			<f:facet name="header">
				#{msgs1.label_reference_produit}
			</f:facet>
			<h:outputText value="#{o.reference}" />
		</p:column>

		<p:column>
			<f:facet name="header">
				#{msgs1.label_description}
			</f:facet>
			<h:outputText value="#{o.description}" />
		</p:column>
		 
		<p:column>
			<f:facet name="header">
				Nb Photos disponibles
			</f:facet>
			<h:link value="#{o.listPhotoDTO.size()}" outcome="/BackOffice/GestionProduits/gest_photos.xhtml"/>
		</p:column>

</p:dataTable>	
<h1>
	<h:outputLabel style="font-style: italic; background-color: red;" id="PourVoir2" value="produitBean.produitFormDTO : is null" rendered="#{produitBean.produitFormDTO==null}" /> 
	<h:outputLabel style="font-style: italic; background-color: green;" id="PasPourVoir2" value="produitBean.produitFormDTO : is not null" rendered="#{produitBean.produitFormDTO!=null}" /> 
</h1>

	</h:form>	
</ui:define>

</ui:composition>
    